package com.example.aiquestions.mapper;

import com.example.aiquestions.entity.GraphData;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface GraphMapper {
    // 查询所有图谱数据
    List<GraphData> selectAllGraphData();
    
    // 根据ID查询图谱数据
    GraphData selectGraphDataById(@Param("id") Long id);
    
    // 根据科目ID查询图谱数据
    List<GraphData> selectGraphDataBySubjectId(@Param("subjectId") Long subjectId);
    
    // 根据科目和章节查询图谱数据
    List<GraphData> selectGraphDataByChapter(@Param("chapter") Integer chapter);
    
    // 插入图谱数据
    int insertGraphData(GraphData graphData);
    
    // 批量插入图谱数据
    int batchInsertGraphData(List<GraphData> graphDataList);
    
    // 更新图谱数据
    int updateGraphData(GraphData graphData);
    
    // 根据ID删除图谱数据
    int deleteGraphDataById(@Param("id") Long id);
    
    // 根据科目ID删除图谱数据
    int deleteGraphDataBySubjectId(@Param("subjectId") Long subjectId);
}
